package com.lex.crossgate.admin.modules.sys.service;

import com.lex.crossgate.common.constants.R;;
import com.lex.crossgate.admin.modules.sys.entity.SysUser;
import com.baomidou.mybatisplus.service.IService;

import java.util.List;
import java.util.Set;

/**
 * TODO: 
 * @author 李贝留斯
 * @email sunyadongsyd@163.com
 * @date 2018/5/28 13:28
 */
public interface SysUserService extends IService<SysUser> {
    /**
     * TODO: 获取用户列表-表格 带分页
     * @author 李贝留斯
     * @email sunyadongsyd@163.com
     * @date 2018/5/8 21:28
     */
    List<SysUser> getSysUser(String userName,String mobile);
    /**
     * TODO: 前端验证用户名是否重复方法
     * @author 李贝留斯
     * @date 2018/5/18 16:08
     */
    int getUserByUserName(String userName);
    /**
     * TODO: 根据用户名查询
     * @author 李贝留斯
     * @email sunyadongsyd@163.com
     * @date 2018/5/4 22:10
     */
    SysUser getByUserName(String userName);
    /**
     * TODO: 获取角色
     * @author 李贝留斯
     * @email sunyadongsyd@163.com
     * @date 2018/5/5 15:54
     */
    Set<String> listUserRoles(String userId);
    /**
     * TODO: 获取权限
     * @author 李贝留斯
     * @email sunyadongsyd@163.com
     * @date 2018/5/5 15:55
     */
    Set<String> listUserPerms(String userId);

    /**
     * TODO: 保存token
     * @author 李贝留斯
     * @email sunyadongsyd@163.com
     * @date 2018/5/6 15:15
     */
    R saveUserToken(String userId);
}
